VRStageParameters
Deprecated: This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.
Non-standard: This feature is not standardized. We do not recommend using non-standard features in production, as they have limited browser support, and may change or be removed. However, they can be a suitable alternative in specific cases where no standard option exists.
The VRStageParameters
interface of the WebVR API represents the values describing the stage area for devices that support room-scale experiences.
Note: This interface was part of the old WebVR API. It has been superseded by the WebXR Device API.
This interface is accessible through the VRDisplay.stageParameters
property.
Instance properties
VRStageParameters.sittingToStandingTransform
Deprecated Read only Non-standard-
Contains a matrix that transforms the sitting-space view matrices of
VRFrameData
to standing-space. VRStageParameters.sizeX
Deprecated Read only Non-standard-
Returns the width of the play-area bounds in meters.
VRStageParameters.sizeY
Deprecated Read only Non-standard-
Returns the depth of the play-area bounds in meters.
Examples
const info = document.querySelector("p");
let vrDisplay;
navigator.getVRDisplays().then((displays) => {
vrDisplay = displays[0];
const stageParams = vrDisplay.stageParameters;
// stageParams is a VRStageParameters object
if (stageParams === null) {
info.textContent =
"Your VR Hardware does not support room-scale experiences.";
} else {
info.innerText = `
Sitting to standing transform: ${stageParams.sittingToStandingTransform}
Play area width (m): ${stageParams.sizeX}
Play area depth (m): ${stageParams.sizeY}`;
info.insertBefore(
document.createElement("strong"),
info.firstChild,
).textContent = "Display stage parameters";
}
});
Specifications
This interface was part of the old WebVR API that has been superseded by the WebXR Device API. It is no longer on track to becoming a standard.
Until all browsers have implemented the new WebXR APIs, it is recommended to rely on frameworks, like A-Frame, Babylon.js, or Three.js, or a polyfill, to develop WebXR applications that will work across all browsers. Read Meta's Porting from WebVR to WebXR guide for more information.